package com.angel.acv.pojo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ACvExample {
    protected String join;

    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ACvExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setJoin(String join) {
        this.join = join;
    }

    public String getJoin() {
        return join;
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andJoinWhere(String whereSql) {
            addCriterion(whereSql);
            return (Criteria) this;
        }

        public Criteria andUidIsNull() {
            addCriterion("a_cv.uid is null");
            return (Criteria) this;
        }

        public Criteria andUidIsNotNull() {
            addCriterion("a_cv.uid is not null");
            return (Criteria) this;
        }

        public Criteria andUidEqualTo(String value) {
            addCriterion("a_cv.uid =", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotEqualTo(String value) {
            addCriterion("a_cv.uid <>", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidGreaterThan(String value) {
            addCriterion("a_cv.uid >", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidGreaterThanOrEqualTo(String value) {
            addCriterion("a_cv.uid >=", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLessThan(String value) {
            addCriterion("a_cv.uid <", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLessThanOrEqualTo(String value) {
            addCriterion("a_cv.uid <=", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLike(String value) {
            addCriterion("a_cv.uid like", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotLike(String value) {
            addCriterion("a_cv.uid not like", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidIn(List<String> values) {
            addCriterion("a_cv.uid in", values, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotIn(List<String> values) {
            addCriterion("a_cv.uid not in", values, "uid");
            return (Criteria) this;
        }

        public Criteria andUidIn(String sql) {
            addCriterion("a_cv.uid in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andUidNotIn(String sql) {
            addCriterion("a_cv.uid not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andUidBetween(String value1, String value2) {
            addCriterion("a_cv.uid between", value1, value2, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotBetween(String value1, String value2) {
            addCriterion("a_cv.uid not between", value1, value2, "uid");
            return (Criteria) this;
        }

        public Criteria andOwneridIsNull() {
            addCriterion("a_cv.ownerid is null");
            return (Criteria) this;
        }

        public Criteria andOwneridIsNotNull() {
            addCriterion("a_cv.ownerid is not null");
            return (Criteria) this;
        }

        public Criteria andOwneridEqualTo(Integer value) {
            addCriterion("a_cv.ownerid =", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridNotEqualTo(Integer value) {
            addCriterion("a_cv.ownerid <>", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridGreaterThan(Integer value) {
            addCriterion("a_cv.ownerid >", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.ownerid >=", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridLessThan(Integer value) {
            addCriterion("a_cv.ownerid <", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.ownerid <=", value, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridIn(List<Integer> values) {
            addCriterion("a_cv.ownerid in", values, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridNotIn(List<Integer> values) {
            addCriterion("a_cv.ownerid not in", values, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridIn(String sql) {
            addCriterion("a_cv.ownerid in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andOwneridNotIn(String sql) {
            addCriterion("a_cv.ownerid not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andOwneridBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.ownerid between", value1, value2, "ownerid");
            return (Criteria) this;
        }

        public Criteria andOwneridNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.ownerid not between", value1, value2, "ownerid");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("a_cv.company_id is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("a_cv.company_id is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(Integer value) {
            addCriterion("a_cv.company_id =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(Integer value) {
            addCriterion("a_cv.company_id <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(Integer value) {
            addCriterion("a_cv.company_id >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.company_id >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(Integer value) {
            addCriterion("a_cv.company_id <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.company_id <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<Integer> values) {
            addCriterion("a_cv.company_id in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<Integer> values) {
            addCriterion("a_cv.company_id not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(String sql) {
            addCriterion("a_cv.company_id in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(String sql) {
            addCriterion("a_cv.company_id not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.company_id between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.company_id not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("a_cv.create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("a_cv.create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("a_cv.create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("a_cv.create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("a_cv.create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("a_cv.create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("a_cv.create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("a_cv.create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("a_cv.create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("a_cv.create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(String sql) {
            addCriterion("a_cv.create_time in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(String sql) {
            addCriterion("a_cv.create_time not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("a_cv.create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("a_cv.create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("a_cv.update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("a_cv.update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("a_cv.update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("a_cv.update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("a_cv.update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("a_cv.update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("a_cv.update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("a_cv.update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("a_cv.update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("a_cv.update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(String sql) {
            addCriterion("a_cv.update_time in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(String sql) {
            addCriterion("a_cv.update_time not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("a_cv.update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("a_cv.update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameIsNull() {
            addCriterion("a_cv.original_filename is null");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameIsNotNull() {
            addCriterion("a_cv.original_filename is not null");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameEqualTo(String value) {
            addCriterion("a_cv.original_filename =", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameNotEqualTo(String value) {
            addCriterion("a_cv.original_filename <>", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameGreaterThan(String value) {
            addCriterion("a_cv.original_filename >", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameGreaterThanOrEqualTo(String value) {
            addCriterion("a_cv.original_filename >=", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameLessThan(String value) {
            addCriterion("a_cv.original_filename <", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameLessThanOrEqualTo(String value) {
            addCriterion("a_cv.original_filename <=", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameLike(String value) {
            addCriterion("a_cv.original_filename like", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameNotLike(String value) {
            addCriterion("a_cv.original_filename not like", value, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameIn(List<String> values) {
            addCriterion("a_cv.original_filename in", values, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameNotIn(List<String> values) {
            addCriterion("a_cv.original_filename not in", values, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameIn(String sql) {
            addCriterion("a_cv.original_filename in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameNotIn(String sql) {
            addCriterion("a_cv.original_filename not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameBetween(String value1, String value2) {
            addCriterion("a_cv.original_filename between", value1, value2, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andOriginalFilenameNotBetween(String value1, String value2) {
            addCriterion("a_cv.original_filename not between", value1, value2, "originalFilename");
            return (Criteria) this;
        }

        public Criteria andFilepathIsNull() {
            addCriterion("a_cv.filePath is null");
            return (Criteria) this;
        }

        public Criteria andFilepathIsNotNull() {
            addCriterion("a_cv.filePath is not null");
            return (Criteria) this;
        }

        public Criteria andFilepathEqualTo(String value) {
            addCriterion("a_cv.filePath =", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathNotEqualTo(String value) {
            addCriterion("a_cv.filePath <>", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathGreaterThan(String value) {
            addCriterion("a_cv.filePath >", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathGreaterThanOrEqualTo(String value) {
            addCriterion("a_cv.filePath >=", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathLessThan(String value) {
            addCriterion("a_cv.filePath <", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathLessThanOrEqualTo(String value) {
            addCriterion("a_cv.filePath <=", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathLike(String value) {
            addCriterion("a_cv.filePath like", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathNotLike(String value) {
            addCriterion("a_cv.filePath not like", value, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathIn(List<String> values) {
            addCriterion("a_cv.filePath in", values, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathNotIn(List<String> values) {
            addCriterion("a_cv.filePath not in", values, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathIn(String sql) {
            addCriterion("a_cv.filePath in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andFilepathNotIn(String sql) {
            addCriterion("a_cv.filePath not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andFilepathBetween(String value1, String value2) {
            addCriterion("a_cv.filePath between", value1, value2, "filepath");
            return (Criteria) this;
        }

        public Criteria andFilepathNotBetween(String value1, String value2) {
            addCriterion("a_cv.filePath not between", value1, value2, "filepath");
            return (Criteria) this;
        }

        public Criteria andCvInfoIsNull() {
            addCriterion("a_cv.cv_info is null");
            return (Criteria) this;
        }

        public Criteria andCvInfoIsNotNull() {
            addCriterion("a_cv.cv_info is not null");
            return (Criteria) this;
        }

        public Criteria andCvInfoEqualTo(String value) {
            addCriterion("a_cv.cv_info =", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoNotEqualTo(String value) {
            addCriterion("a_cv.cv_info <>", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoGreaterThan(String value) {
            addCriterion("a_cv.cv_info >", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoGreaterThanOrEqualTo(String value) {
            addCriterion("a_cv.cv_info >=", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoLessThan(String value) {
            addCriterion("a_cv.cv_info <", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoLessThanOrEqualTo(String value) {
            addCriterion("a_cv.cv_info <=", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoLike(String value) {
            addCriterion("a_cv.cv_info like", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoNotLike(String value) {
            addCriterion("a_cv.cv_info not like", value, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoIn(List<String> values) {
            addCriterion("a_cv.cv_info in", values, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoNotIn(List<String> values) {
            addCriterion("a_cv.cv_info not in", values, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoIn(String sql) {
            addCriterion("a_cv.cv_info in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvInfoNotIn(String sql) {
            addCriterion("a_cv.cv_info not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvInfoBetween(String value1, String value2) {
            addCriterion("a_cv.cv_info between", value1, value2, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvInfoNotBetween(String value1, String value2) {
            addCriterion("a_cv.cv_info not between", value1, value2, "cvInfo");
            return (Criteria) this;
        }

        public Criteria andCvDateIsNull() {
            addCriterion("a_cv.cv_date is null");
            return (Criteria) this;
        }

        public Criteria andCvDateIsNotNull() {
            addCriterion("a_cv.cv_date is not null");
            return (Criteria) this;
        }

        public Criteria andCvDateEqualTo(Date value) {
            addCriterion("a_cv.cv_date =", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateNotEqualTo(Date value) {
            addCriterion("a_cv.cv_date <>", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateGreaterThan(Date value) {
            addCriterion("a_cv.cv_date >", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateGreaterThanOrEqualTo(Date value) {
            addCriterion("a_cv.cv_date >=", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateLessThan(Date value) {
            addCriterion("a_cv.cv_date <", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateLessThanOrEqualTo(Date value) {
            addCriterion("a_cv.cv_date <=", value, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateIn(List<Date> values) {
            addCriterion("a_cv.cv_date in", values, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateNotIn(List<Date> values) {
            addCriterion("a_cv.cv_date not in", values, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateIn(String sql) {
            addCriterion("a_cv.cv_date in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvDateNotIn(String sql) {
            addCriterion("a_cv.cv_date not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvDateBetween(Date value1, Date value2) {
            addCriterion("a_cv.cv_date between", value1, value2, "cvDate");
            return (Criteria) this;
        }

        public Criteria andCvDateNotBetween(Date value1, Date value2) {
            addCriterion("a_cv.cv_date not between", value1, value2, "cvDate");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayIsNull() {
            addCriterion("a_cv.topExpSallay is null");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayIsNotNull() {
            addCriterion("a_cv.topExpSallay is not null");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayEqualTo(BigDecimal value) {
            addCriterion("a_cv.topExpSallay =", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayNotEqualTo(BigDecimal value) {
            addCriterion("a_cv.topExpSallay <>", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayGreaterThan(BigDecimal value) {
            addCriterion("a_cv.topExpSallay >", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("a_cv.topExpSallay >=", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayLessThan(BigDecimal value) {
            addCriterion("a_cv.topExpSallay <", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayLessThanOrEqualTo(BigDecimal value) {
            addCriterion("a_cv.topExpSallay <=", value, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayIn(List<BigDecimal> values) {
            addCriterion("a_cv.topExpSallay in", values, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayNotIn(List<BigDecimal> values) {
            addCriterion("a_cv.topExpSallay not in", values, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayIn(String sql) {
            addCriterion("a_cv.topExpSallay in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayNotIn(String sql) {
            addCriterion("a_cv.topExpSallay not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("a_cv.topExpSallay between", value1, value2, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andTopexpsallayNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("a_cv.topExpSallay not between", value1, value2, "topexpsallay");
            return (Criteria) this;
        }

        public Criteria andCvfileidIsNull() {
            addCriterion("a_cv.cvfileid is null");
            return (Criteria) this;
        }

        public Criteria andCvfileidIsNotNull() {
            addCriterion("a_cv.cvfileid is not null");
            return (Criteria) this;
        }

        public Criteria andCvfileidEqualTo(Integer value) {
            addCriterion("a_cv.cvfileid =", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidNotEqualTo(Integer value) {
            addCriterion("a_cv.cvfileid <>", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidGreaterThan(Integer value) {
            addCriterion("a_cv.cvfileid >", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.cvfileid >=", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidLessThan(Integer value) {
            addCriterion("a_cv.cvfileid <", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.cvfileid <=", value, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidIn(List<Integer> values) {
            addCriterion("a_cv.cvfileid in", values, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidNotIn(List<Integer> values) {
            addCriterion("a_cv.cvfileid not in", values, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidIn(String sql) {
            addCriterion("a_cv.cvfileid in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvfileidNotIn(String sql) {
            addCriterion("a_cv.cvfileid not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andCvfileidBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.cvfileid between", value1, value2, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andCvfileidNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.cvfileid not between", value1, value2, "cvfileid");
            return (Criteria) this;
        }

        public Criteria andIntegrityIsNull() {
            addCriterion("a_cv.integrity is null");
            return (Criteria) this;
        }

        public Criteria andIntegrityIsNotNull() {
            addCriterion("a_cv.integrity is not null");
            return (Criteria) this;
        }

        public Criteria andIntegrityEqualTo(Integer value) {
            addCriterion("a_cv.integrity =", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityNotEqualTo(Integer value) {
            addCriterion("a_cv.integrity <>", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityGreaterThan(Integer value) {
            addCriterion("a_cv.integrity >", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.integrity >=", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityLessThan(Integer value) {
            addCriterion("a_cv.integrity <", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.integrity <=", value, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityIn(List<Integer> values) {
            addCriterion("a_cv.integrity in", values, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityNotIn(List<Integer> values) {
            addCriterion("a_cv.integrity not in", values, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityIn(String sql) {
            addCriterion("a_cv.integrity in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andIntegrityNotIn(String sql) {
            addCriterion("a_cv.integrity not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andIntegrityBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.integrity between", value1, value2, "integrity");
            return (Criteria) this;
        }

        public Criteria andIntegrityNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.integrity not between", value1, value2, "integrity");
            return (Criteria) this;
        }

        public Criteria andSourceIsNull() {
            addCriterion("a_cv.source is null");
            return (Criteria) this;
        }

        public Criteria andSourceIsNotNull() {
            addCriterion("a_cv.source is not null");
            return (Criteria) this;
        }

        public Criteria andSourceEqualTo(Integer value) {
            addCriterion("a_cv.source =", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotEqualTo(Integer value) {
            addCriterion("a_cv.source <>", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThan(Integer value) {
            addCriterion("a_cv.source >", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.source >=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThan(Integer value) {
            addCriterion("a_cv.source <", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.source <=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(List<Integer> values) {
            addCriterion("a_cv.source in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(List<Integer> values) {
            addCriterion("a_cv.source not in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(String sql) {
            addCriterion("a_cv.source in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(String sql) {
            addCriterion("a_cv.source not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andSourceBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.source between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.source not between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andFlagIsNull() {
            addCriterion("a_cv.flag is null");
            return (Criteria) this;
        }

        public Criteria andFlagIsNotNull() {
            addCriterion("a_cv.flag is not null");
            return (Criteria) this;
        }

        public Criteria andFlagEqualTo(Integer value) {
            addCriterion("a_cv.flag =", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotEqualTo(Integer value) {
            addCriterion("a_cv.flag <>", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThan(Integer value) {
            addCriterion("a_cv.flag >", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("a_cv.flag >=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThan(Integer value) {
            addCriterion("a_cv.flag <", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagLessThanOrEqualTo(Integer value) {
            addCriterion("a_cv.flag <=", value, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagIn(List<Integer> values) {
            addCriterion("a_cv.flag in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotIn(List<Integer> values) {
            addCriterion("a_cv.flag not in", values, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagIn(String sql) {
            addCriterion("a_cv.flag in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andFlagNotIn(String sql) {
            addCriterion("a_cv.flag not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andFlagBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.flag between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("a_cv.flag not between", value1, value2, "flag");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("a_cv.remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("a_cv.remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("a_cv.remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("a_cv.remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("a_cv.remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("a_cv.remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("a_cv.remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("a_cv.remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("a_cv.remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("a_cv.remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("a_cv.remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("a_cv.remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(String sql) {
            addCriterion("a_cv.remark in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(String sql) {
            addCriterion("a_cv.remark not in("+sql+")");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("a_cv.remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("a_cv.remark not between", value1, value2, "remark");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}